﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Capa_Entidad;

namespace Acceso_Datos.Clases_DAO
{
    public class clsAte_Historia_PersonalDAO
    {
        private BDClinicaEntities ContextoDeObjs = new BDClinicaEntities();
        public bool Insertar(ATE_HISTORIA_PERSONAL Obj)
        {
            try
            {
                ContextoDeObjs.AddObject("ATE_HISTORIA_PERSONAL", Obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
        public bool Modificar(ATE_HISTORIA_PERSONAL obj)
        {

            try
            {

                var q = (from c in ContextoDeObjs.ATE_HISTORIA_PERSONAL
                         where c.PAC_ID_PACIENTE == obj.PAC_ID_PACIENTE
                         select c).FirstOrDefault();






                q.HISPER_FLAG_CRECIMIENTO = obj.HISPER_FLAG_CRECIMIENTO;
                q.HISPER_FLAG_VACUNACIONES = obj.HISPER_FLAG_VACUNACIONES;
                q.HISPER_ESPECIFICAR_VACUNACIONES = obj.HISPER_ESPECIFICAR_VACUNACIONES;
                q.HISPER_FLAG_PERSONALIDAD = obj.HISPER_FLAG_PERSONALIDAD;
                q.HISPER_FLAG_HISTORIA_SEXUAL = obj.HISPER_FLAG_HISTORIA_SEXUAL;
                q.HISPER_ENFERMEDADES_MEDICAS = obj.HISPER_ENFERMEDADES_MEDICAS;
                q.HISPER_ENFERMEDADES_QUIRURGICAS = obj.HISPER_ENFERMEDADES_QUIRURGICAS;
                q.HISPER_COMPLICACIONES_OPERACIONES_PREVIAS = obj.HISPER_COMPLICACIONES_OPERACIONES_PREVIAS;
                q.HISPER_FLAG_ALERGIAS = obj.HISPER_FLAG_ALERGIAS;
                q.HISPER_ESPECIFICAR_ALERGIAS = obj.HISPER_ESPECIFICAR_ALERGIAS;
                q.HISPER_FLAG_TRANSFUSIONES_PREVIAS = obj.HISPER_FLAG_TRANSFUSIONES_PREVIAS;
                q.HISPER_COMPLICACIONES_TRANSFUSIONES_PREVIAS = obj.HISPER_COMPLICACIONES_TRANSFUSIONES_PREVIAS;

                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;

            }
            return true;
        }
        public bool Eliminar(ATE_HISTORIA_PERSONAL obj)
        {
            try
            {
                ContextoDeObjs.AttachTo("ATE_HISTORIA_PERSONAL", obj);
                ContextoDeObjs.DeleteObject(obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
        public List<ATE_HISTORIA_PERSONAL> listar()
        {
            try
            {
                List<ATE_HISTORIA_PERSONAL> lista = new List<ATE_HISTORIA_PERSONAL>();
                var q = from c in ContextoDeObjs.ATE_HISTORIA_PERSONAL
                        select c;
                lista = q.ToList();
                return lista;
            }
            catch (Exception ex)
            {

                throw ex;
            }

        }


        public List<ATE_HISTORIA_PERSONAL> getHistoria(int id_atencion)
        {
            List<ATE_HISTORIA_PERSONAL> lista = new List<ATE_HISTORIA_PERSONAL>();
            try
            {
                
                var q = from c in ContextoDeObjs.ATE_HISTORIA_PERSONAL
                        where c.PAC_ID_PACIENTE==id_atencion
                        select c;
                lista = q.ToList();
                return lista;
            }
            catch (Exception ex)
            {
                return lista;
                //throw ex;
            }

        }

    }
}
